package com.itita.ww2.game.alliance.event;

import com.itita.ww2.model.user.UserProfile;
import com.itita.ww2.puredb.model.Alliance;
import com.itita.ww2.puredb.model.AllianceMember;

/**
 * 成员加入后触发,此时成员未在联盟成员缓存内
 * @author NorthLan
 *
 */
public interface IAllianceMemberJoinListener {
	/**
	 * 成员加入联盟后触发,此时成员未在联盟成员缓存内
	 * @param source 回应的玩家
	 * @param target 加入的玩家
	 * @param alliance 对应联盟
	 * @param allianceMember 对应联盟成员信息
	 */
	public void onAllianceMemberJoin(UserProfile source, UserProfile target, Alliance alliance,
			AllianceMember allianceMember, JoinType joinType);

	public static enum JoinType {
		CREATE_ALLIANCE, // 创建联盟 
		DIRCET_JOIN, // 直接加入(允许任何人)
		ACCEPT_REQUEST // 接受请求
	}
}
